로딩 중이에요... 🐣
Pandas Part1 기초 입문 | ✅ 편저: 코담 운영자
📖 데이터 분석의 시작, Pandas 완전 정복 - Part 1: Pandas 기초 입문
✨ 서론: Pandas란 무엇인가?
데이터 분석과 머신러닝의 세계에서 Pandas는 표 형식 데이터 처리의 표준 라이브러리로 자리잡았습니다. 대규모 데이터셋을 다루는 일부터 Excel보다 강력한 데이터 처리까지, Pandas는 파이썬 데이터 과학의 핵심 도구입니다.
📌 Pandas의 이름 유래: Panel Data + Python Data Analysis의 합성어
✅ Pandas가 필요한 이유
- 대용량 데이터 처리 가능
- 다양한 파일 포맷 지원 (CSV, Excel, JSON 등)
- 데이터 정제, 분석, 시각화까지 한 번에 가능
💡 실무 팁: Pandas는 Excel에 익숙한 사람에게 친숙한 문법을 제공하지만, 훨씬 더 큰 데이터셋과 복잡한 연산을 처리할 수 있습니다.
🛠️ Pandas 설치 및 시작하기
📥 설치 방법
pip install pandas
📦 기본 Import
import pandas as pd
pd
라는 별칭은 Pandas 커뮤니티에서 표준처럼 사용됩니다.
💡 실무 팁: Jupyter Notebook 환경에서는
import pandas as pd
와 함께%matplotlib inline
을 추가해 시각화도 바로 확인할 수 있습니다.
📌 Pandas의 주요 데이터 구조
1️⃣ Series: 1차원 데이터 구조
Series는 인덱스가 있는 배열입니다.
import pandas as pd
# 예제 데이터셋 (서울시 미세먼지 농도)
pm10_levels = [45, 51, 60, 42, 38]
series = pd.Series(pm10_levels, index=['월', '화', '수', '목', '금'])
print(series)
출력 예시:
월 45
화 51
수 60
목 42
금 38
dtype: int64
💡 실무 팁: 인덱스를 지정하면 데이터 레이블로 행을 빠르게 선택할 수 있어 가독성과 편의성이 올라갑니다.
2️⃣ DataFrame: 2차원 데이터 구조
DataFrame은 행(row)과 열(column)로 이루어진 표입니다.
# 예제 데이터셋 (직원 정보)
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Department': ['HR', 'Engineering', 'Marketing'],
'Salary': [50000, 80000, 60000]
}
df = pd.DataFrame(data)
print(df)
출력 예시:
Name Department Salary
0 Alice HR 50000
1 Bob Engineering 80000
2 Charlie Marketing 60000
📂 데이터 불러오기 및 저장하기
📥 CSV 파일 불러오기
# 예제 데이터: employees.csv 파일 로드
df = pd.read_csv('employees.csv')
💾 CSV 파일 저장하기
# 처리된 데이터를 새 CSV로 저장
df.to_csv('processed_employees.csv', index=False)
index=False
를 추가하면 인덱스가 파일에 저장되지 않습니다.
💡 실무 팁: 파일 크기가 매우 클 경우
pd.read_csv('file.csv', nrows=100)
로 일부만 로드하여 데이터 구조를 먼저 확인하세요.
🔍 데이터 탐색 기본기
데이터 구조 확인
df.shape # (행, 열)
df.info() # 데이터 타입 및 결측치 확인
df.describe() # 수치형 데이터 요약 통계
데이터 미리보기
df.head() # 상위 5개 행
df.tail() # 하위 5개 행
💡 실무 팁:
.sample(5)
을 사용하면 랜덤 샘플링으로 데이터를 확인할 수 있어 이상치 파악에 유용합니다.
🎯 간단한 데이터 선택과 슬라이싱
컬럼 선택
df['Name'] # 단일 컬럼
여러 컬럼 선택
df[['Name', 'Salary']]
행 선택 (loc: 라벨 기반, iloc: 인덱스 기반)
df.loc[1] # 라벨 기반 선택
df.iloc[1] # 인덱스 기반 선택
조건 필터링
# 급여 60000 이상 직원 필터링
df[df['Salary'] >= 60000]
💡 실무 팁: 여러 조건은
&
와|
를 사용해 결합하며 괄호로 묶어야 합니다.
df[(df['Department'] == 'Engineering') & (df['Salary'] > 70000)]
📌 마무리 및 다음 편 예고
이번 Part 1에서는 Pandas의 기본 개념과 데이터 불러오기 및 탐색법을 다뤘습니다. 다음 Part 2에서는 데이터 전처리 및 변형을 집중적으로 배우며 실제 데이터를 더 깊이 있게 다룰 예정입니다.
🚀 다음 글 미리보기: 결측치 처리, GroupBy, PivotTable 등 실무 데이터 처리 기술 총정리!